/**
 * Copyright  2025, Hai Yue Xing He Technology Co., Ltd
 * 
 * @author        ZHAO LIMIN
 * @version       1.0.1
 * @since         2025-04
 * HYXYMultiPoints.ts      标准类，用于记录矢量图： 多点
 *                      将cc.object 进行矢量化用于检测碰撞，相叠等。
 */
import { Vec3 } from "cc";
import { HGeometry } from "./HYXHGeometry";
import { HYXHGeoTools} from "./HYXHGeoTools";
import { PointsCollection } from "./HYXHPointsCollection";
import { ICartesian } from "./Cartesian";
import { UNION_NUMBER_ARRAY } from "./HDataType";
import { Cartesian3 } from "./Cartesian3";
/**
 * 矢量图-多点，支持多层多点，用于进行批量渲染
 */
export class HMultiPoints implements HGeometry {
    /**
     * points 是多层点集合
     */
    public points: Map<number, PointsCollection>;
    constructor() {
        this.points = new Map<number, PointsCollection>();
    }

    pack(layer: number, array: UNION_NUMBER_ARRAY, startIndex: number): UNION_NUMBER_ARRAY {
        throw new Error("Method not implemented.");
    }
    unpack(layer: number, array: UNION_NUMBER_ARRAY, startIndex: number) {
        throw new Error("Method not implemented.");
    }
    pckagedLength(): number {
        return Cartesian3.packedLength;
    }
    lineIndice(layer: number): UNION_NUMBER_ARRAY {
        throw new Error("Method not implemented.");
    }
    pushBack(layer: number, newPoint: ICartesian): number {
        throw new Error("Method not implemented.");
    }
    equals(other: HGeometry): boolean {
        throw new Error("Method not implemented.");
    }
    update(): boolean {
        throw new Error("Method not implemented.");
    }
}